// Learn cc.Class:
//  - [Chinese] http://www.cocos.com/docs/creator/scripting/class.html
//  - [English] http://www.cocos2d-x.org/docs/editors_and_tools/creator-chapters/scripting/class/index.html
// Learn Attribute:
//  - [Chinese] http://www.cocos.com/docs/creator/scripting/reference/attributes.html
//  - [English] http://www.cocos2d-x.org/docs/editors_and_tools/creator-chapters/scripting/reference/attributes/index.html
// Learn life-cycle callbacks:
//  - [Chinese] http://www.cocos.com/docs/creator/scripting/life-cycle-callbacks.html
//  - [English] http://www.cocos2d-x.org/docs/editors_and_tools/creator-chapters/scripting/life-cycle-callbacks/index.html
// require("Platform")
// var coreEntrance = require("CoreEntrance")
// var dataMrgEntrance = require("DataMrgEntrance")
// window.global = window;
var Log = require("Log");
window.Log = Log ;
var LaunchData = require("LaunchData");
var DN_CMD = require("zjhCMD");
require("ZjhGameData");
var SocketManager = require("SocketManager");

// var DN_PBAdapter = require("DN_PBAdapter");
var DNPBAdapter = require("ZjhPBAdapter");

cc.Class({
    extends: cc.Component,

    properties: {
        className:"GameController",
        deskid:{
            default:null,
            type:cc.Component,
        },
        confirmRoom:{
            default:null,
            type:cc.Prefab,
        },
        gameover:{
            default:null,
            type:cc.Prefab,
        },
        bg:{
            default:null,
            type:cc.Component,
        },
        small_bg:{
            default:null,
            type:cc.SpriteFrame,
        },
        big_bg:{
            default:null,
            type:cc.SpriteFrame,
        },
    },

    // LIFE-CYCLE CALLBACKS:
    // 初始化模块   
    init:function(){
         // coreEntrance.init();
         // dataMrgEntrance.init();
         EventManager.addEventObeserveF(EventConfig.ShowFinalGameOver, handler(this,
            this.FinalGameOver),"gameController");
         EventManager.addEventObeserveF(EventConfig.UserExit, handler(this,
            this.UserExit),"gameController");
         EventManager.addEventObeserveF(EventConfig.HomeExit, handler(this,
            this.exitToHall),"gameController");
    },

    onLoad () {
        this.init();
        //this.view = this.getComponent("GameView");
       // new DN_PBAdapter();
        this.SocketManager = new SocketManager();
        //this.SocketManager.gameController = this ;
		new DNPBAdapter();
		
		global.Audio.playBGM("games/douniu/sound/music/bgm.mp3");

         console.log("进入房间");
         var gameid = LaunchData.instance().getUrlParams("gameid"); 

        GameData.PlayerNum = 6 ;
        GameConfig.headConfig = GameConfig.headConfigSix ;
        GameConfig.panelConfig = GameConfig.panelConfigSix ;
        GameConfig.chatConfig = GameConfig.chatConfigSix ;

        if(gameid==100006){
            GameData.PlayerNum = 9 ;
            GameConfig.headConfig = GameConfig.headConfigNight ;
            GameConfig.panelConfig = GameConfig.panelConfigNine ;
            GameConfig.chatConfig = GameConfig.chatConfigNine ;
            this.bg.getComponent(cc.Sprite).spriteFrame = this.big_bg;
        }
        
        if(gameid==100007){
            GameData.PlayerNum = 12 ;
            GameConfig.headConfig = GameConfig.headConfigele ;
            GameConfig.panelConfig = GameConfig.panelConfigEle ;
            GameConfig.chatConfig = GameConfig.chatConfigEle ;
            this.bg.getComponent(cc.Sprite).spriteFrame = this.big_bg;
        }   

         var deskid = LaunchData.instance().getUrlParams("deskid");
         console.log("deskid-->"+deskid);
         if(deskid){ //有桌子id
            console.log("info.deskid-->"+deskid);
            GameData.deskid = deskid ;
            this.deskid.getComponent(cc.Label).string = "房号:"+deskid ;
            var confirmRoom = cc.instantiate(this.confirmRoom)
            confirmRoom.setPosition(cc.p(-360,-640));
            confirmRoom.active = true ;
            this.node.addChild(confirmRoom);
            console.log("发送请求桌子信息");
            var temp =  {cmd:DN_CMD.GetDeskInfoReq,
                body:{
                    uin: UserInfoModel.info.uin,
                    desk_id:deskid,
                }}
            dump(temp);
            GameNet.sendRequest(temp);
         }
    },

    start () {
        
         
    },
    UserExit:function(info){
        if(info.model.op_user.uin == UserInfoModel.info.uin){ 
            this.SocketManager.onDestroy();
            this.SocketManager = null ; 
            GameNet.sendRequest({cmd:DN_CMD.Exit,
            body:{}});
            GameManager.instance().turnGame(100001,""); 
        }
    },  
    //     //玩家进入房间  返回
    UserEnterDeskNtf:function(info){
        console.log("玩家进入房间");
        GameData.updateEnterDeskInfo(info.model);
        this.deskid.getComponent(cc.Label).string = "房号:"+info.model.deskid ;
        EventManager.dispatchEventF(EventConfig.UserEnterDeskNtf,GameData);
    },

    FinalGameOver:function(info){ 
        console.log("处理大结算");
        dump(info);
        var prefab  = cc.instantiate(this.gameover);
        prefab.setPosition(cc.p(-360,-640));
        prefab.setAnchorPoint(cc.p(0.5,0.5));
        cc.director.getScene().getChildByName('Canvas').addChild(prefab,0);
        prefab.thisJS.updateView(info.model)
    },
    exitToHall:function(info){
        this.SocketManager.onDestroy();
        this.SocketManager = null ;
        GameNet.sendRequest({cmd:DN_CMD.Exit,
            body:{}});
        GameManager.instance().turnGame(100001,""); 
    },

//     test:function(){
//          this.scheduleOnce(function(){
//            this.UserEnterDeskNtf();
//          },1);
//          this.scheduleOnce(function(){
//            this.EvtBullFrightClassicGameStart();
//          },2);
//          //抢庄
//         this.scheduleOnce(function(){
//            this.UserGrabBankNtf();
//          },3);
//         this.scheduleOnce(function(){
//            this.EvtBullFrightClassicBankNtf();
//          },4);
//         this.scheduleOnce(function(){
//            this.UserCallTimesNtf();
//          },5);
//         this.scheduleOnce(function(){
//            this.EvtBullFrightClassicLastCard();
//          },6);
//         this.scheduleOnce(function(){
//            this.UserOutCardNtf();
//          },7);
//          this.scheduleOnce(function(){
//            this.BullFrightClassicGameOver();
//          },8);
//     },
//     // initaddEvent:function(){
//     //      Log.logd("tianjiashijian");
//     //     //用户进桌
//     //    // DataManager.registerMesgObserve(DN_CMD.KAN_ENTER_ROOM,this,handler(this,this.enterRoomsuc));
//     //     //游戏开始
//     //     //DataManager.registerMesgObserve(DN_CMD.KAN_GAME_START,this,handler(this,this.gameStart));
//     //     // //用户抢庄
//     //     // DataManager.registerMesgObserve(DN_CMD.KAN_USER_QIANG,this,handler(this,this.callDealer));
//     //     // //游戏叫分
//     //     // DataManager.registerMesgObserve(DN_CMD.KAN_ZHUANG,this,handler(this,this.startAddBet));
//     //     // //用户叫分
//     //     // DataManager.registerMesgObserve(DN_CMD.USER_BASE,this,handler(this,this.userAddBet));
//     //     // //游戏展示最后一张牌
//     //     // DataManager.registerMesgObserve(DN_CMD.USER_LAST_CARD,this,handler(this,this.showLastCard));
//     //     // //用户选牛完毕
//     //     // DataManager.registerMesgObserve(DN_CMD.SEND_CARD,this,handler(this,this.userChooseCard));
//     //     // //游戏结束
//     //     // DataManager.registerMesgObserve(DN_CMD.KAN_GAME_OVER,this,handler(this,this.gameEnd));
//     //     // //用户退出
//     //     // DataManager.registerMesgObserve(DN_CMD.KAN_QUIT,this,handler(this,this.userQuit));

//     //     // //选择牌的提示（如：手上的牌是有牛的噢,再看一眼?）
//     //     // EventManager.addEventObeserve(DN_ET.KAN_CALC_NOTICE,handler(this,this.showChooseCardTips));
//     //     // DataManager.registerMesgObserve(DN_CMD.UserCreateDeskRsp,this,handler(this,this.UserCreateDeskRsp));
//     //     DataManager.registerMesgObserve(DN_CMD.UserEnterDeskNtf,this,handler(this,this.UserEnterDeskNtf));
//     //     DataManager.registerMesgObserve(DN_CMD.UserReadyNtf,this,handler(this,this.UserReadyNtf));
//     //     DataManager.registerMesgObserve(DN_CMD.EvtBullFrightClassicGameStart,this,handler(this,this.EvtBullFrightClassicGameStart));
//     //     DataManager.registerMesgObserve(DN_CMD.UserGrabBankNtf,this,handler(this,this.UserGrabBankNtf));
//     //     DataManager.registerMesgObserve(DN_CMD.EvtBullFrightClassicBankNtf,this,handler(this,this.EvtBullFrightClassicBankNtf));
        
//     //     DataManager.registerMesgObserve(DN_CMD.UserCallTimesNtf,this,handler(this,this.UserCallTimesNtf));   
//     //     DataManager.registerMesgObserve(DN_CMD.EvtBullFrightClassicLastCard,this,handler(this,this.EvtBullFrightClassicLastCard));  

//     //     DataManager.registerMesgObserve(DN_CMD.UserOutCardNtf,this,handler(this,this.UserOutCardNtf)); 
        
//     //     DataManager.registerMesgObserve(DN_CMD.BullFrightClassicGameOver,this,handler(this,this.BullFrightClassicGameOver)); 
//     //     cc.eventManager.addCustomListener(cc.game.EVENT_HIDE, function(){
//     //     cc.log("游戏进入后台");
//     //     });
//     //     cc.eventManager.addCustomListener(cc.game.EVENT_SHOW, function(){
//     //     cc.log("重新返回游戏");
//     //     });   
//     // },
//     // removeEvent:function(){
//     //     // DataManager.removeMesgObserve(DN_CMD.KAN_ENTER_ROOM,this);
//     //     // DataManager.removeMesgObserve(DN_CMD.KAN_GAME_START,this);
//     //     // DataManager.removeMesgObserve(DN_CMD.KAN_USER_QIANG,this);
//     //     // DataManager.removeMesgObserve(DN_CMD.KAN_ZHUANG,this);
//     //     // DataManager.removeMesgObserve(DN_CMD.USER_BASE,this);
//     //     // DataManager.removeMesgObserve(DN_CMD.USER_LAST_CARD,this);
//     //     // DataManager.removeMesgObserve(DN_CMD.SEND_CARD,this);
//     //     // DataManager.removeMesgObserve(DN_CMD.KAN_GAME_OVER,this);
//     //     // DataManager.removeMesgObserve(DN_CMD.KAN_QUIT,this);
//     //     // EventManager.removeEvent(DN_ET.KAN_CALC_NOTICE);
//     // },

// //         // 用户进入房间  返回 1663
// //     message UserEnterDeskNtf {
// //         optional int32 deskid=1; // desk id
// //         optional int32 roomid=2; // roomid
// //         optional int32 op_uin=3; // op uin
// //         optional int32 status=4 ; // status  1 等待状态  2 抢庄状态  3 叫分状态  4 出牌状态  5 结束状态
// //         optional int32 dealer=5; // dealer uin
// //         optional int32 player_op_past_time=6; // 临到的那个人已经过去的时间
// //         repeated GameUserInfo users =7; // users list
// //         optional int32 next_uin=8;// next user id
// //         optional int64 total_chips=9;
// //         repeated TotalChipsDetailInfo total_chips_detail=10;
// //         optional DeskPlayInfo play_info = 11;
// //         optional int32 dealer_seatid=13;            // dealer的座位号
// //         optional int64 gold = 17;                   // 玩家总金币，主要为了解决玩家站起后切换到后台金币变化没更新
// //         optional int32 max_round = 26;              // 最大的轮数
// //         optional int32 max_chips = 27;              // 最大的加注数
// //         optional int32 base_chip = 28;              // 房间底注
// //         repeated int32 chip_list = 29;              // 可加注列表
// //         optional int32 can_operator = 30;           // 可以执行的操作 包括 看牌 比牌 弃牌  用位数表示  111  第一位看牌  第二位比牌 第三位弃牌
// //         repeated int32 card = 31;                   //玩家手牌      重连才会有
// //         optional int32 card_type = 32;              //玩家手牌类型    重练才会有
// //         optional int32 round_count = 33;            //当前轮数
// //         optional int32 call_money = 34;             // 当前桌子的下注额
        
// //         message grabdealer{
// //             optional int32 uin = 1;                 // 用户ID
// //             optional int32 is_grab = 2;             // 是否抢庄   0是没有  1是有
// //             optional int32 grab_score = 3;          // 抢庄的倍数
// //         }
        
// //         repeated grabdealer grab_info = 35;         //  当 status 等于 2 的时候 才有这个数据
        
// //         message callscore{
// //             optional int32 uin = 1;                 // 用户ID
// //             optional int32 is_callscore = 2;        // 是否叫分  0是没有  1是有
// //             optional int32 callscore_time = 3;      // 叫分的倍数
// //         }
        
// //         repeated callscore call_score_info = 36;        //  当 status 等于 3 的时候 才有这个数据
        
// //         message out_card
// //         {
// //             optional int32 uin = 1;                 // 用户ID
// //             optional int32 is_outcard = 2;          //  是否出牌  0是没有  1是有
// //         }
        
// //         repeated out_card out_card_info = 37;       //  当 status 等于 4 的时候 才有这个数据
        
// //         optional int32 left_time = 38;              // 当前阶段剩余时间
// //         repeated int32 grab_score = 39;             // 加倍倍数列表
// //         repeated int32 call_score_list=40;          //玩家可叫分列表

// //     }

// //     message GameUserInfo {
// //     optional int32 status=1;
// //     optional int64 gold=2;
// //     optional int64 chips=3;
// //     optional int32 uin=4;
// //     optional string nick=5;
// //     optional int32 seatid=6;
// //     optional int32 sex=7;
// //     repeated int32 cards = 8[packed=true];
// //     repeated int32 max_cards= 9[packed=true];
// //     optional int32 max_cards_formation =10;
// //     optional int64 round_chips = 11;
// //     optional bool beauty = 12;                      // 是否是美女
// //     optional int32 b_rank = 13;                     // 美女排名
// //     optional bool checked = 14;                     // 是否已看牌
// //     optional int32 decoration = 15;                 // 头像装饰
// //     optional int32 vip_days = 16;                   // vip剩余天数
// //     optional int32 hiding = 17;                     // 是否隐身
// //     optional string portrait = 18;                  // 头像url
// //     optional int32 is_master = 19;                  // 角色, 0:普通玩家；1:桌子创建人
// //     optional bool auto_play = 20;                   // 是否是托管状态
// //     optional bool in_desk = 21;                     // 是否在桌子内
// //     optional bool be_anti = 22;                     // 是否正在被反隐身,消息发给谁，就是在被谁反隐身
// //     optional int32 card_type = 23;                  //斗牛牌型
// // }

// //     message DeskPlayInfo {
// //     repeated int32 cards =1[packed=true];
// //     optional int32 max_cards_formation=2;       // 牌型
// //     optional int64 min_bet=3;                   // 如果正好轮到的是我，那么能下注的最小值
// //     optional int64 max_bet=4;                   // 如果正好轮到我，那么能下注的
// //     optional int64 dft_improve_bet=5;           // 默认加注
// //     optional int64 chips = 6;
// //     optional int64 round_chips=7;
// //     optional int32 show_cards = 8;              // 是否设置亮牌了，0：不亮牌；1：亮牌
// //     optional int32 rank = 9;                    // 实时比赛排名 
// //     optional int32 status = 10;                 // 玩家的实时状态
// //     optional int64 round_cost = 11;             // 本局下注数
// //     }


// {
//  53 　　cmd: 1663
//  53 　　ret: 0
//  53 　　sn: 0
//  44 　　model: 
//  38 　　{
//  53 　　　　deskid: 100192
//  53 　　　　roomid: 30101
//  53 　　　　op_uin: 1215
//  53 　　　　status: 2
//  53 　　　　dealer: 0
//  53 　　　　player_op_past_time: 0
//  44 　　　　users: 
//  38 　　　　{
//  44 　　　　　　0: 
//  38 　　　　　　{
//  53 　　　　　　　　status: 1081
//  53 　　　　　　　　gold: 4900
//  53 　　　　　　　　chips: 0
//  53 　　　　　　　　uin: 1215
//  53 　　　　　　　　nick: 笑嘻嘻的珊珊
//  53 　　　　　　　　seatid: 0
//  53 　　　　　　　　sex: 0
//  44 　　　　　　　　cards: 
//  38 　　　　　　　　{
//  53 　　　　　　　　　　0: 42
//  53 　　　　　　　　　　1: 14
//  53 　　　　　　　　　　2: 48
//  53 　　　　　　　　　　3: 11
//  56 　　　　　　　　}
//  53 　　　　　　　　round_chips: 0
//  53 　　　　　　　　beauty: false
//  53 　　　　　　　　b_rank: 0
//  53 　　　　　　　　decoration: -1
//  53 　　　　　　　　vip_days: 0
//  53 　　　　　　　　hiding: 0
//  53 　　　　　　　　portrait: IMG3
//  53 　　　　　　　　is_master: 0
//  56 　　　　　　}
//  44 　　　　　　1: 
//  38 　　　　　　{
//  53 　　　　　　　　status: 1081
//  53 　　　　　　　　gold: 4900
//  53 　　　　　　　　chips: 0
//  53 　　　　　　　　uin: 1216
//  53 　　　　　　　　nick: 幼稚的亲亲
//  53 　　　　　　　　seatid: 3
//  53 　　　　　　　　sex: 1
//  44 　　　　　　　　cards: 
//  38 　　　　　　　　{
//  53 　　　　　　　　　　0: 25
//  53 　　　　　　　　　　1: 49
//  53 　　　　　　　　　　2: 53
//  53 　　　　　　　　　　3: 7
//  56 　　　　　　　　}
//  53 　　　　　　　　round_chips: 0
//  53 　　　　　　　　beauty: false
//  53 　　　　　　　　b_rank: 0
//  53 　　　　　　　　decoration: -1
//  53 　　　　　　　　vip_days: 0
//  53 　　　　　　　　hiding: 0
//  53 　　　　　　　　portrait: IMG1
//  53 　　　　　　　　is_master: 0
//  56 　　　　　　}
//  56 　　　　}
//  53 　　　　next_uin: -1
//  53 　　　　total_chips: 0
//  53 　　　　dealer_seatid: -1
//  53 　　　　gold: 4900
//  53 　　　　max_round: 20
//  53 　　　　max_chips: 200
//  53 　　　　base_chip: 25
//  44 　　　　chip_list: 
//  38 　　　　{
//  53 　　　　　　0: 10
//  53 　　　　　　1: 20
//  53 　　　　　　2: 30
//  53 　　　　　　3: 50
//  53 　　　　　　4: 100
//  56 　　　　}
//  53 　　　　can_operator: -1
//  44 　　　　grab_info: 
//  38 　　　　{
//  44 　　　　　　0: 
//  38 　　　　　　{
//  53 　　　　　　　　uin: 1215
//  53 　　　　　　　　is_grab: 0
//  56 　　　　　　}
//  44 　　　　　　1: 
//  38 　　　　　　{
//  53 　　　　　　　　uin: 1216
//  53 　　　　　　　　is_grab: 0
//  56 　　　　　　}
//  56 　　　　}
//  53 　　　　left_time: -4
//  44 　　　　grab_score: 
//  38 　　　　{
//  53 　　　　　　0: 1
//  53 　　　　　　1: 2
//  53 　　　　　　2: 3
//  53 　　　　　　3: 4
//  56 　　　　}
//  56 　　}
//  56 }


   


//     //玩家准备回调
//     UserReadyNtf:function(info){
//         console.log("收到玩家准备信息");
//          dump(info)    
//          EventManager.dispatchEvent(EventConfig.UserReadyNtf,info.model);
//     },
//     /*
//     message EvtBullFrightClassicGameStart {
//     optional int32 deskid =1; // deskid
//     repeated GameUserInfo users = 2;
//     optional DeskPlayInfo play_info = 3;
//     optional int32 roomid = 4;      
//     optional int32 status= 5;           // 牌桌状态
//     optional int32 grab_time = 6;       // 抢庄时间
//     repeated int32 grab_score = 7;      // 加倍倍数列表
//     repeated int32 card = 8;            //用户手牌
//     }
//     通知开始游戏
//     */
//     /*
// gameController.js:366 收到开始游戏信息
//  :25 -------------------dump start------------------
//  :38 {
//  :53 　　cmd: 1601
//  :53 　　ret: 0
//  :53 　　sn: 0
//  :44 　　model: 
//  :38 　　{
//  :53 　　　　deskid: 100122
//  :44 　　　　users: 
//  :38 　　　　{
//  :44 　　　　　　0: 
//  :38 　　　　　　{
//  :53 　　　　　　　　status: 1081
//  :53 　　　　　　　　gold: 4900
//  :53 　　　　　　　　chips: 0
//  :53 　　　　　　　　uin: 824
//  :53 　　　　　　　　nick: 婉约开阔的小蔷
//  :53 　　　　　　　　seatid: 1
//  :53 　　　　　　　　sex: 1
//  :53 　　　　　　　　round_chips: 0
//  :53 　　　　　　　　beauty: false
//  :53 　　　　　　　　b_rank: 0
//  :53 　　　　　　　　decoration: -1
//  :53 　　　　　　　　vip_days: 0
//  :53 　　　　　　　　hiding: 0
//  :53 　　　　　　　　portrait: IMG2
//  :53 　　　　　　　　is_master: 0
//  :56 　　　　　　}
//  :44 　　　　　　1: 
//  :38 　　　　　　{
//  :53 　　　　　　　　status: 1081
//  :53 　　　　　　　　gold: 4900
//  :53 　　　　　　　　chips: 0
//  :53 　　　　　　　　uin: 822
//  :53 　　　　　　　　nick: 光秃秃的小萌
//  :53 　　　　　　　　seatid: 4
//  :53 　　　　　　　　sex: 1
//  :53 　　　　　　　　round_chips: 0
//  :53 　　　　　　　　beauty: false
//  :53 　　　　　　　　b_rank: 0
//  :53 　　　　　　　　decoration: -1
//  :53 　　　　　　　　vip_days: 0
//  :53 　　　　　　　　hiding: 0
//  :53 　　　　　　　　portrait: IMG6
//  :53 　　　　　　　　is_master: 0
//  :56 　　　　　　}
//  :56 　　　　}
//  :44 　　　　play_info: 
//  :38 　　　　{
//  :53 　　　　　　min_bet: 25
//  :53 　　　　　　max_bet: 0
//  :53 　　　　　　dft_improve_bet: 0
//  :53 　　　　　　chips: 0
//  :53 　　　　　　round_chips: 0
//  :56 　　　　}
//  :53 　　　　status: 2
//  :53 　　　　grab_time: 1
//  :44 　　　　grab_score: 
//  :38 　　　　{
//  :53 　　　　　　0: 1
//  :53 　　　　　　1: 2
//  :53 　　　　　　2: 3
//  :53 　　　　　　3: 4
//  :56 　　　　}
//  :44 　　　　card: 
//  :38 　　　　{
//  :53 　　　　　　0: 8
//  :53 　　　　　　1: 37
//  :53 　　　　　　2: 50
//  :53 　　　　　　3: 54
//  :56 　　　　}
//  :56 　　}
//  :56 }
//     */

//     EvtBullFrightClassicGameStart:function(info){    
//         EventManager.dispatchEventF(EventConfig.stopTimer);
//         console.log("收到开始游戏信息");
//         dump(info);
//         GameData.updateGameStartInfo(info.model);
//         EventManager.dispatchEventF(EventConfig.startGame,info.model);

//         this.scheduleOnce(function(){
//              EventManager.dispatchEventF(EventConfig.startQiangZhuang,info.model);
//         },2.5);
        
//     },

//     UserGrabBankNtf:function(info){    
//         console.log("收到玩家抢庄消息");
//         dump(info);
//         EventManager.dispatchEventF(EventConfig.qiangZhuang,info.model);
//     },
//     // message EvtBullFrightClassicBankNtf{
//     // optional int32 uin = 1;             //用户ID 庄家ID
//     // optional int32 desk_id=2;           //桌子ID
//     // optional int32 call_times=3;        //抢庄倍数  0表示不抢庄
//     // repeated int32 user_grab_list=4;    //抢庄玩家列表  用于表情动画
//     // repeated int32 call_score_list=5;   //玩家可叫分列表
//     // optional int32 call_score_time = 6; //玩家请求倍数的时间
//     // }
//     /*
//     {
//       53 　　cmd: 1612
//       53 　　ret: 0
//       53 　　sn: 0
//       44 　　model: 
//       38 　　{
//       53 　　　　uin: 1030
//       53 　　　　desk_id: 100149
//       53 　　　　call_times: 1
//       44 　　　　user_grab_list: 
//       38 　　　　{
//       53 　　　　　　0: 1030
//       53 　　　　　　1: 1028
//       56 　　　　}
//       44 　　　　call_score_list: 
//       38 　　　　{
//       53 　　　　　　0: 1
//       53 　　　　　　1: 2
//       53 　　　　　　2: 4
//       53 　　　　　　3: 5
//       56 　　　　}
//       53 　　　　call_score_time: 15
//       56 　　}
//       56 }
//     */
//     EvtBullFrightClassicBankNtf:function(info){   
//         EventManager.dispatchEventF(EventConfig.stopTimer);
//         console.log("收到定庄消息");
//         dump(info);
//         EventManager.dispatchEventF(EventConfig.fixBanker,info.model);

//     },
//     /*
//     {
//    :60 　　cmd: 1622
//    :60 　　ret: 0
//    :60 　　sn: 0
//    :52 　　model: 
//    :46 　　{
//    :60 　　　　uin: 1034
//    :60 　　　　desk_id: 100151
//    :60 　　　　call_times: 5
//    :63 　　}
//    :63 }
//     */
//     //下注倍数返回
//     UserCallTimesNtf:function(info){   
//         // info = {
//         //     uin:1006,
//         //     desk_id:123456,
//         //     call_times:1,
//         // },
//         console.log("收到下注消息");
//         dump(info);
//         EventManager.dispatchEventF(EventConfig.jiaofen,info.model);
//     },
//     /*
//     message EvtBullFrightClassicLastCard{
//     optional int32 uin = 1;             //用户ID
//     optional int32 desk_id=2;           //桌子ID
//     optional int32 card=3;              //最后一张牌
//     optional int32 card_type = 4;       // 
//     optional int32 out_card_time = 5;   //玩家出牌时间   
//     }
//     */
//     //通知开牌
//     EvtBullFrightClassicLastCard:function(info){   
//         EventManager.dispatchEventF(EventConfig.stopTimer);
//         console.log("通知开牌");
//         dump(info)
//         GameData.updateLastCardInfo(info.model);
//         EventManager.dispatchEventF(EventConfig.kaipai,info.model);
//         EventManager.dispatchEventF(EventConfig.startTimer,info.model.out_card_time);
//     },
//     /*
//     optional int32 uin = 1;             //用户ID
//     optional int32 desk_id=2;           //桌子ID
//     repeated int32 card = 3;                //用户手牌
//     optional int32 card_type = 4;           //手牌类型
//     */
//     UserOutCardNtf:function(info){  
//         console.log("通知摊牌");
//         dump(info)
//         EventManager.dispatchEventF(EventConfig.tanPaiNtf,info.model);
//     },
//     /*
//     message BullFrightClassicGameOver{
//         message GameOverResultInfo{
//         optional int32 uin = 1;
//         optional int64 win_money = 2;           //输赢的钱  
//         repeated int32 card = 4;                //用户手牌
//         optional int32 card_type = 5;           //手牌类型
//         optional int64 user_money=6;            //玩家剩余总金币
        
//     }
//     repeated GameOverResultInfo result =1;
//     optional int32 start_time = 2;                     // 下一轮开始等待的时间
//     */
//     BullFrightClassicGameOver:function(info){  
//         EventManager.dispatchEventF(EventConfig.stopTimer);
//         console.log("通知结算");
//         dump(info)
//         GameData.updateGameEndInfo(info.model);
//         console.log("发送结算消息");
//         EventManager.dispatchEventF(EventConfig.gameOver,info.model);
//         var self = this;
//         this.scheduleOnce(function(){
//             EventManager.dispatchEventF(EventConfig.clearTable);
//             EventManager.dispatchEventF(EventConfig.startTimer,info.model.start_time);
//            // self.test();
//         },3);
//     },
//     //进桌
//     // enterRoomsuc:function(info){
//     //     Log.logd("进桌")
//     //     dump(info);
//     //     GameData.updateEnterDeskInfo(info.model);
//     //     EventManager.dispatchEvent(EventConfig.updateTableInfo,GameData);
//     //     //this.view.enterDesk(GameData);
//     // },
//     // // //游戏开始
//     // gameStart:function(info){
//     //     GameData.updateGameStartInfo(info.model);
//     //     EventManager.dispatchEvent(EventConfig.startGame,info.model);
//     //     Log.logd("开始游戏")
//     //     dump(info);
//     // },
//     // //用户抢庄
//     // callDealer:function(info){

//     //     this.view.callDealer(info.model);
//     // },
//     // //游戏叫分
//     // startAddBet:function(info){
//     //     GameData.updateInfo(info.model);

//     //     this.view.startAddBet(info.model);
//     // },
//     // //用户叫分
//     // userAddBet:function(info){
//     //     this.view.userAddBet(info.model);
//     // },
//     // //游戏展示最后一张牌
//     // showLastCard:function(info){
//     //     GameData.updateLastCardInfo(info.model);
//     //     this.view.showLastCard(GameData);
//     // },
//     // //用户选牛完毕
//     // userChooseCard:function(info){
//     //     info.model.card_type = info.model.card_type || 0;
//     //     this.view.userChooseCard(info.model);
//     // },
//     // //游戏结束
//     // gameEnd:function(info){
//     //     GameData.updateGameEndInfo(info.model);
//     //     this.view.gameEnd(info.model);
//     // },
//     // //用户退出
//     // userQuit:function(info){
//     //     this.view.userQuit(info.model);
//     // },
//     // //选择牌的提示（如：手上的牌是有牛的噢,再看一眼?）
//     // showChooseCardTips:function(info){
//     //     this.view.showChooseCardTips(info);
//     // },
//     // onDestroy:function(){
//     //     this.removeEvent();
//     // }
//     // update (dt) {},
});
